﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Cataloger
{
    public partial class FrmTworzKatalog : Form
    {
		#region Fields (1) 

        ColorDialog colorDlg=new ColorDialog();

		#endregion Fields 

		#region Constructors (1) 

        public FrmTworzKatalog()
        {
            InitializeComponent();
            chckHaslo.CheckStateChanged += delegate 
            {
                if (chckHaslo.Checked)
                {
                    grpHaslo.Enabled = true;
                }
                else
                {
                    grpHaslo.Enabled = false;
                    txtHaslo1.Text = "";
                    txtHaslo2.Text = "";
                }
            };
            btnAnuluj.Click += delegate
            {
                this.DialogResult = DialogResult.Cancel;
                this.Close();
            };
            btnKolor.Click += delegate
            {
                if (colorDlg.ShowDialog() == DialogResult.OK)
                {
                    btnKolor.ForeColor = colorDlg.Color;
                }
            };
            btnOK.Click += delegate
            {
                if (SprawdzPola())
                {
                    this.DialogResult = DialogResult.OK;
                    this.Close();
                }
                else
                {
                    MessageBox.Show(BledyPol(), "Błąd danych", MessageBoxButtons.OK, MessageBoxIcon.Warning);
     
                }
            };
        }

		#endregion Constructors 

		#region Properties (5) 
        public string Opis
        {
            get { return txtOpis.Text; }
        }
        public bool CzyKompresowac
        {
            get { return chckKompresuj.Checked; }
        }

        public string Haslo
        {
            get { return txtHaslo1.Text; }
        }

        public bool JestHaslo
        {
            get { return chckHaslo.Checked; }
        }

        public Color KolorKatalogu
        {
            get { return colorDlg.Color; }
        }

        public string NazwaKatalogu
        {
            get { return txtNazwa.Text; }
        }

		#endregion Properties 

		#region Methods (2) 

		// Private Methods (2) 

        private string BledyPol()
        {
            if (txtNazwa.Text == "")
            {
                return "d nazwy katalogu\n";

            }
            else if (chckHaslo.Checked)
            {
                if (txtHaslo1.Text != txtHaslo2.Text)
                {
                    return "Niezgodne hasla\n";

                }

            }
            return "";

        }

        private bool SprawdzPola()
        {
            if (txtNazwa.Text == "")

            {
                return false;
                
            }
            else if (chckHaslo.Checked)
            {
                if (txtHaslo1.Text != txtHaslo2.Text)
                {
                    return false;

                }
                else
                {
                    return true;
                }
            }
            return true;

        }

		#endregion Methods 
    }
}
